﻿
Partial Public Class Abm_Filtros_Reporte
    Inherits System.Web.UI.Page

    Public masterpage As AbmBase

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        'Instancia del programa (objeto regla de negocios)
        Dim obr As New BR.Web.Utilitarios.Abms.FiltrosReporte

        Dim ods As New DataSet

        'Campos de filtado, si esta vacio los incluye a todos
        Dim cf As String = "nm_reporte, nm_campo"

        'Columnas grilla
        Dim cg As String = "nm_reporte, nm_campo, tp_filtro, nu_orden"

        'Nombres Alias de columnas
        Dim ac As New Hashtable
        ac.Add("nm_reporte", "Reporte")
        ac.Add("nm_campo", "Filtro")
        ac.Add("tp_filtro", "Tipo de Filtro")
        ac.Add("nu_orden", "Nro. Orden")

        'Instancia iniciada de la clase de masterpage AbmBase
        masterpage = CType(Page.Master, AbmBase)

        'Atributos del AbmBase
        masterpage.lblTitulo = "Filtros de reporte"
        masterpage.FiltrosBusqueda = cf
        masterpage.ColumnasGrilla = cg
        masterpage.AliasCampos = ac

        'Metodo de inicializacion del Abmbase
        masterpage.InicializarPagina(obr)

        'Captura del enevento Actualizando y asignacion de handler al metodo Validaciones
        AddHandler masterpage.Actualizando, AddressOf Validaciones

        'Enlace de eventos Javascript
        nu_orden.Attributes.Add("onBlur", "return val_nu_orden('" & nu_orden.ClientID & "','" & lbl_val_nu_orden.ClientID & "');")

        'Combos
        If Not Page.IsPostBack Then
            comboReportes()
            comboFiltros()
        End If

    End Sub

    Protected Overloads Sub OnPreInit() Handles Me.PreInit
        'Aplicacion de Tema
        If Not Session("Tema") Is Nothing Then
            Page.Theme = Session("Tema").ToString
        End If
    End Sub

    Private Sub comboReportes()
        Dim ds As New DataSet
        ds = Sql.Select(ConnectionString, "*", "wad_reportes")
        For Each row In ds.Tables(0).Rows
            Dim item As New ListItem
            item.Value = row(0)
            item.Text = row(0)
            nm_reporte.Items.Add(item)
        Next
    End Sub

    Private Sub comboFiltros()
        Dim ds As New DataSet
        ds = Sql.Select(ConnectionString, "*", "wld_campos_filtro")
        For Each row In ds.Tables(0).Rows
            Dim item As New ListItem
            item.Value = row(0)
            item.Text = row(0)
            nm_campo.Items.Add(item)
        Next
    End Sub

    'Metodo al cual se le asignara el evento Actualizando
    Private Sub Validaciones(ByRef cancela As Boolean)

    End Sub
End Class

